[INFO] cloning repository https://github.com/davidko/stk500-rs
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/davidko/stk500-rs" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdavidko%2Fstk500-rs", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdavidko%2Fstk500-rs'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] dce56fa4ab7a7ce71a050d800355b2d63342daaf
[INFO] checking davidko/stk500-rs against try#72f88fc4e9458f89516a0b8b0868f3718aec5b47 for pr-74989
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fdavidko%2Fstk500-rs" "/workspace/builds/worker-9/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-9/source'...
[INFO] [stderr] done.
[INFO] validating manifest of git repo https://github.com/davidko/stk500-rs on toolchain 72f88fc4e9458f89516a0b8b0868f3718aec5b47
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+72f88fc4e9458f89516a0b8b0868f3718aec5b47" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking git repo https://github.com/davidko/stk500-rs
[INFO] finished tweaking git repo https://github.com/davidko/stk500-rs
[INFO] tweaked toml for git repo https://github.com/davidko/stk500-rs written to /workspace/builds/worker-9/source/Cargo.toml
[INFO] crate git repo https://github.com/davidko/stk500-rs already has a lockfile, it will not be regenerated
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+72f88fc4e9458f89516a0b8b0868f3718aec5b47" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr] error: the lock file /workspace/builds/worker-9/source/Cargo.lock needs to be updated but --locked was passed to prevent this
[INFO] [stderr] If you want to try to generate the lock file without accessing the network, use the --offline flag.
[INFO] the lockfile is outdated, regenerating it
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+72f88fc4e9458f89516a0b8b0868f3718aec5b47" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+72f88fc4e9458f89516a0b8b0868f3718aec5b47" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded serialport v3.3.0
[INFO] [stderr]   Downloaded CoreFoundation-sys v0.1.4
[INFO] [stderr]   Downloaded mach v0.1.2
[INFO] [stderr]   Downloaded IOKit-sys v0.1.5
[INFO] [stderr]   Downloaded libudev v0.2.0
[INFO] [stderr]   Downloaded mio-serial v3.3.1
[INFO] [stderr]   Downloaded tokio-serial v4.3.3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+72f88fc4e9458f89516a0b8b0868f3718aec5b47" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] b82dc80ae5702105e53102e5b0beac53a9723244152ea203b91ef4c3de612d64
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "b82dc80ae5702105e53102e5b0beac53a9723244152ea203b91ef4c3de612d64", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b82dc80ae5702105e53102e5b0beac53a9723244152ea203b91ef4c3de612d64", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b82dc80ae5702105e53102e5b0beac53a9723244152ea203b91ef4c3de612d64", kill_on_drop: false }`
[INFO] [stdout] b82dc80ae5702105e53102e5b0beac53a9723244152ea203b91ef4c3de612d64
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-9/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:d92eaeed33fa75130ca1ee6c8a01d1ffb62bac859dfdfb3450e3e5d1c0146529" "/opt/rustwide/cargo-home/bin/cargo" "+72f88fc4e9458f89516a0b8b0868f3718aec5b47" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8ccd3d7becb0e715746ca6b98f310f279612d2ec98ba361fec16a768ed5e8705
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "8ccd3d7becb0e715746ca6b98f310f279612d2ec98ba361fec16a768ed5e8705", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.77
[INFO] [stderr]     Checking cfg-if v0.1.10
[INFO] [stderr]    Compiling maybe-uninit v2.0.0
[INFO] [stderr]     Checking slab v0.4.2
[INFO] [stderr]     Checking scopeguard v1.1.0
[INFO] [stderr]     Checking fnv v1.0.7
[INFO] [stderr]    Compiling bitflags v1.2.1
[INFO] [stderr]     Checking scoped-tls v0.1.2
[INFO] [stderr]     Checking bytes v0.5.6
[INFO] [stderr]     Checking smallvec v0.2.1
[INFO] [stderr]     Checking pin-project-lite v0.1.7
[INFO] [stderr]     Checking take v0.1.0
[INFO] [stderr]     Checking futures-timer v3.0.2
[INFO] [stderr]    Compiling crossbeam-utils v0.7.2
[INFO] [stderr]    Compiling memoffset v0.5.5
[INFO] [stderr]    Compiling crossbeam-epoch v0.8.2
[INFO] [stderr]    Compiling num-traits v0.2.12
[INFO] [stderr]    Compiling num-integer v0.1.43
[INFO] [stderr]    Compiling libudev-sys v0.1.4
[INFO] [stderr]     Checking tokio-service v0.1.0
[INFO] [stderr]    Compiling log v0.4.11
[INFO] [stderr]     Checking lock_api v0.3.4
[INFO] [stderr]    Compiling parking_lot_core v0.6.2
[INFO] [stderr]    Compiling parking_lot v0.9.0
[INFO] [stderr]     Checking tokio-sync v0.1.8
[INFO] [stderr]     Checking log v0.3.9
[INFO] [stderr]     Checking smallvec v0.6.13
[INFO] [stderr]     Checking tokio-executor v0.1.10
[INFO] [stderr]     Checking crossbeam-queue v0.2.3
[INFO] [stderr]     Checking tokio-current-thread v0.1.7
[INFO] [stderr]     Checking tokio-timer v0.2.13
[INFO] [stderr]     Checking crossbeam-deque v0.7.3
[INFO] [stderr]     Checking iovec v0.1.4
[INFO] [stderr]     Checking net2 v0.2.35
[INFO] [stderr]     Checking num_cpus v1.13.0
[INFO] [stderr]     Checking rand v0.4.6
[INFO] [stderr]     Checking nix v0.14.1
[INFO] [stderr]     Checking atty v0.2.14
[INFO] [stderr]     Checking nix v0.17.0
[INFO] [stderr]     Checking time v0.1.44
[INFO] [stderr]     Checking libudev v0.2.0
[INFO] [stderr]     Checking colored v1.9.3
[INFO] [stderr]     Checking bytes v0.4.12
[INFO] [stderr]     Checking tokio-threadpool v0.1.18
[INFO] [stderr]     Checking mio v0.6.22
[INFO] [stderr]     Checking chrono v0.4.15
[INFO] [stderr]     Checking tokio-io v0.1.13
[INFO] [stderr]     Checking rand v0.3.23
[INFO] [stderr]     Checking mio-uds v0.6.8
[INFO] [stderr]     Checking tokio v0.2.22
[INFO] [stderr]     Checking tokio-reactor v0.1.12
[INFO] [stderr]     Checking tokio-codec v0.1.2
[INFO] [stderr]     Checking tokio-fs v0.1.7
[INFO] [stderr]     Checking simple_logger v1.9.0
[INFO] [stderr]     Checking tokio-udp v0.1.6
[INFO] [stderr]     Checking tokio-uds v0.2.7
[INFO] [stderr]     Checking tokio-tcp v0.1.4
[INFO] [stderr]     Checking tokio v0.1.22
[INFO] [stderr]     Checking tokio-core v0.1.17
[INFO] [stderr]     Checking tokio-proto v0.1.1
[INFO] [stderr]     Checking serialport v3.3.0
[INFO] [stderr]     Checking mio-serial v3.3.1
[INFO] [stderr]     Checking tokio-serial v4.3.3
[INFO] [stderr]     Checking stk500 v0.1.3 (/opt/rustwide/workdir)
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/codec.rs:16:31
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub type ResponseFuture = Box<Future<Item = BytesMut, Error = io::Error>>;
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item = BytesMut, Error = io::Error>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/codec.rs:385:23
[INFO] [stdout]     |
[INFO] [stdout] 385 |     type Future = Box<Future<Item = Self::Response, Error = Self::Error>>;
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item = Self::Response, Error = Self::Error>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:20:25
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub type Response = Box<Future<Item=Vec<u8>, Error=oneshot::Canceled>>;
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<u8>, Error=oneshot::Canceled>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:181:14
[INFO] [stdout]     |
[INFO] [stdout] 181 |         Box< Future<Item=Vec<u8>, Error=oneshot::Canceled> >
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<u8>, Error=oneshot::Canceled>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:255:27
[INFO] [stdout]     |
[INFO] [stdout] 255 |     write_cb: Option< Box<Fn(Vec<u8>)> >, // Function which writes to the microcontroller being programmed
[INFO] [stdout]     |                           ^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Vec<u8>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::Framed`: Moved to tokio-codec
[INFO] [stdout]  --> src/codec.rs:6:48
[INFO] [stdout]   |
[INFO] [stdout] 6 | use super::tokio_io::codec::{Encoder, Decoder, Framed};
[INFO] [stdout]   |                                                ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::Framed`: Moved to tokio-codec
[INFO] [stdout]    --> src/codec.rs:344:22
[INFO] [stdout]     |
[INFO] [stdout] 344 |     type Transport = Framed<T, Stk500Codec>;
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `encode` has an incompatible type for trait
[INFO] [stdout]    --> src/codec.rs:272:5
[INFO] [stdout]     |
[INFO] [stdout] 272 | /     fn encode(
[INFO] [stdout] 273 | |         &mut self, 
[INFO] [stdout] 274 | |         item: Self::Item, 
[INFO] [stdout] 275 | |         dst: &mut BytesMut
[INFO] [stdout] ...   |
[INFO] [stdout] 282 | |         Ok(())
[INFO] [stdout] 283 | |     }
[INFO] [stdout]     | |_____^ expected struct `bytes::bytes::BytesMut`, found struct `BytesMut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected fn pointer `fn(&mut Stk500Codec, Packet, &mut bytes::bytes::BytesMut) -> std::result::Result<_, _>`
[INFO] [stdout]                found fn pointer `fn(&mut Stk500Codec, Packet, &mut BytesMut) -> std::result::Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `decode` has an incompatible type for trait
[INFO] [stdout]    --> src/codec.rs:314:5
[INFO] [stdout]     |
[INFO] [stdout] 314 | /     fn decode(
[INFO] [stdout] 315 | |         &mut self,
[INFO] [stdout] 316 | |         src: &mut BytesMut,
[INFO] [stdout] 317 | |     ) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] ...   |
[INFO] [stdout] 335 | |         
[INFO] [stdout] 336 | |     }
[INFO] [stdout]     | |_____^ expected struct `bytes::bytes::BytesMut`, found struct `BytesMut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected fn pointer `fn(&mut Stk500Codec, &mut bytes::bytes::BytesMut) -> std::result::Result<_, _>`
[INFO] [stdout]                found fn pointer `fn(&mut Stk500Codec, &mut BytesMut) -> std::result::Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `map_err` found for struct `Delay` in the current scope
[INFO] [stdout]    --> src/lib.rs:231:70
[INFO] [stdout]     |
[INFO] [stdout] 231 |                 futures_timer::Delay::new(Duration::from_millis(50)).map_err(|_|{oneshot::Canceled}).and_then( move |_| {
[INFO] [stdout]     |                                                                      ^^^^^^^ method not found in `Delay`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/futures-timer-3.0.2/src/native/delay.rs:26:1
[INFO] [stdout]     |
[INFO] [stdout] 26  | pub struct Delay {
[INFO] [stdout]     | ---------------- doesn't satisfy `Delay: futures::Future`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the method `map_err` exists but the following trait bounds were not satisfied:
[INFO] [stdout]             `Delay: futures::Future`
[INFO] [stdout]             which is required by `&mut Delay: futures::Future`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `map_err` found for struct `Delay` in the current scope
[INFO] [stdout]    --> src/codec.rs:132:22
[INFO] [stdout]     |
[INFO] [stdout] 132 |                     .map_err(|_|{io::Error::new(io::ErrorKind::Other, "Timeout")})
[INFO] [stdout]     |                      ^^^^^^^ method not found in `Delay`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/futures-timer-3.0.2/src/native/delay.rs:26:1
[INFO] [stdout]     |
[INFO] [stdout] 26  | pub struct Delay {
[INFO] [stdout]     | ---------------- doesn't satisfy `Delay: futures::Future`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the method `map_err` exists but the following trait bounds were not satisfied:
[INFO] [stdout]             `Delay: futures::Future`
[INFO] [stdout]             which is required by `&mut Delay: futures::Future`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `BaudRate` in `tokio_serial`
[INFO] [stdout]    --> src/lib.rs:499:48
[INFO] [stdout]     |
[INFO] [stdout] 499 |             settings.baud_rate = tokio_serial::BaudRate::Baud57600;
[INFO] [stdout]     |                                                ^^^^^^^^ could not find `BaudRate` in `tokio_serial`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0433]: failed to resolve: could not find `BaudRate` in `tokio_serial`
[INFO] [stdout]    --> src/lib.rs:512:44
[INFO] [stdout]     |
[INFO] [stdout] 512 |         settings.baud_rate = tokio_serial::BaudRate::Baud115200;
[INFO] [stdout]     |                                            ^^^^^^^^ could not find `BaudRate` in `tokio_serial`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/codec.rs:16:31
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub type ResponseFuture = Box<Future<Item = BytesMut, Error = io::Error>>;
[INFO] [stdout]    |                               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item = BytesMut, Error = io::Error>`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(bare_trait_objects)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/codec.rs:385:23
[INFO] [stdout]     |
[INFO] [stdout] 385 |     type Future = Box<Future<Item = Self::Response, Error = Self::Error>>;
[INFO] [stdout]     |                       ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item = Self::Response, Error = Self::Error>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]   --> src/lib.rs:20:25
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub type Response = Box<Future<Item=Vec<u8>, Error=oneshot::Canceled>>;
[INFO] [stdout]    |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<u8>, Error=oneshot::Canceled>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `tokio_io::AsyncRead::framed`: Use tokio_codec::Decoder::framed instead
[INFO] [stdout]    --> src/codec.rs:348:15
[INFO] [stdout]     |
[INFO] [stdout] 348 |         Ok(io.framed(Stk500Codec::new()))
[INFO] [stdout]     |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:181:14
[INFO] [stdout]     |
[INFO] [stdout] 181 |         Box< Future<Item=Vec<u8>, Error=oneshot::Canceled> >
[INFO] [stdout]     |              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: use `dyn`: `dyn Future<Item=Vec<u8>, Error=oneshot::Canceled>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: trait objects without an explicit `dyn` are deprecated
[INFO] [stdout]    --> src/lib.rs:255:27
[INFO] [stdout]     |
[INFO] [stdout] 255 |     write_cb: Option< Box<Fn(Vec<u8>)> >, // Function which writes to the microcontroller being programmed
[INFO] [stdout]     |                           ^^^^^^^^^^^ help: use `dyn`: `dyn Fn(Vec<u8>)`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `stk500`.
[INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::Framed`: Moved to tokio-codec
[INFO] [stdout]  --> src/codec.rs:6:48
[INFO] [stdout]   |
[INFO] [stdout] 6 | use super::tokio_io::codec::{Encoder, Decoder, Framed};
[INFO] [stdout]   |                                                ^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(deprecated)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] 
[INFO] [stdout] warning: use of deprecated struct `tokio_io::codec::Framed`: Moved to tokio-codec
[INFO] [stdout]    --> src/codec.rs:344:22
[INFO] [stdout]     |
[INFO] [stdout] 344 |     type Transport = Framed<T, Stk500Codec>;
[INFO] [stdout]     |                      ^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stdout] error: aborting due to 4 previous errors; 8 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] Some errors have detailed explanations: E0053, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0053`.
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `encode` has an incompatible type for trait
[INFO] [stdout]    --> src/codec.rs:272:5
[INFO] [stdout]     |
[INFO] [stdout] 272 | /     fn encode(
[INFO] [stdout] 273 | |         &mut self, 
[INFO] [stdout] 274 | |         item: Self::Item, 
[INFO] [stdout] 275 | |         dst: &mut BytesMut
[INFO] [stdout] ...   |
[INFO] [stdout] 282 | |         Ok(())
[INFO] [stdout] 283 | |     }
[INFO] [stdout]     | |_____^ expected struct `bytes::bytes::BytesMut`, found struct `BytesMut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected fn pointer `fn(&mut Stk500Codec, Packet, &mut bytes::bytes::BytesMut) -> std::result::Result<_, _>`
[INFO] [stdout]                found fn pointer `fn(&mut Stk500Codec, Packet, &mut BytesMut) -> std::result::Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0053]: method `decode` has an incompatible type for trait
[INFO] [stdout]    --> src/codec.rs:314:5
[INFO] [stdout]     |
[INFO] [stdout] 314 | /     fn decode(
[INFO] [stdout] 315 | |         &mut self,
[INFO] [stdout] 316 | |         src: &mut BytesMut,
[INFO] [stdout] 317 | |     ) -> Result<Option<Self::Item>, Self::Error> {
[INFO] [stdout] ...   |
[INFO] [stdout] 335 | |         
[INFO] [stdout] 336 | |     }
[INFO] [stdout]     | |_____^ expected struct `bytes::bytes::BytesMut`, found struct `BytesMut`
[INFO] [stdout]     |
[INFO] [stdout]     = note: expected fn pointer `fn(&mut Stk500Codec, &mut bytes::bytes::BytesMut) -> std::result::Result<_, _>`
[INFO] [stdout]                found fn pointer `fn(&mut Stk500Codec, &mut BytesMut) -> std::result::Result<_, _>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `map_err` found for struct `Delay` in the current scope
[INFO] [stdout]    --> src/lib.rs:231:70
[INFO] [stdout]     |
[INFO] [stdout] 231 |                 futures_timer::Delay::new(Duration::from_millis(50)).map_err(|_|{oneshot::Canceled}).and_then( move |_| {
[INFO] [stdout]     |                                                                      ^^^^^^^ method not found in `Delay`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/futures-timer-3.0.2/src/native/delay.rs:26:1
[INFO] [stdout]     |
[INFO] [stdout] 26  | pub struct Delay {
[INFO] [stdout]     | ---------------- doesn't satisfy `Delay: futures::Future`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the method `map_err` exists but the following trait bounds were not satisfied:
[INFO] [stdout]             `Delay: futures::Future`
[INFO] [stdout]             which is required by `&mut Delay: futures::Future`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 2 arguments but 3 arguments were supplied
[INFO] [stdout]    --> src/lib.rs:500:28
[INFO] [stdout]     |
[INFO] [stdout] 500 |             let mut port = tokio_serial::Serial::from_path("/dev/ttyACM0", &settings, &handle).unwrap();
[INFO] [stdout]     |                            ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ --------------  ---------  ------- supplied 3 arguments
[INFO] [stdout]     |                            |
[INFO] [stdout]     |                            expected 2 arguments
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Serial: AsyncRead` is not satisfied
[INFO] [stdout]    --> src/lib.rs:502:47
[INFO] [stdout]     |
[INFO] [stdout] 502 |             let client = Client::new(&handle, port);
[INFO] [stdout]     |                                               ^^^^ the trait `AsyncRead` is not implemented for `Serial`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/codec.rs:41:5
[INFO] [stdout]     |
[INFO] [stdout] 41  |     pub fn new(handle: &Handle, io_transport: T) -> Client<T> {
[INFO] [stdout]     |     --------------------------------------------------------- required by `Client::<T>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Serial: AsyncWrite` is not satisfied
[INFO] [stdout]    --> src/lib.rs:502:47
[INFO] [stdout]     |
[INFO] [stdout] 502 |             let client = Client::new(&handle, port);
[INFO] [stdout]     |                                               ^^^^ the trait `AsyncWrite` is not implemented for `Serial`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/codec.rs:41:5
[INFO] [stdout]     |
[INFO] [stdout] 41  |     pub fn new(handle: &Handle, io_transport: T) -> Client<T> {
[INFO] [stdout]     |     --------------------------------------------------------- required by `Client::<T>::new`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Serial: AsyncRead` is not satisfied
[INFO] [stdout]    --> src/lib.rs:502:26
[INFO] [stdout]     |
[INFO] [stdout] 502 |             let client = Client::new(&handle, port);
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `AsyncRead` is not implemented for `Serial`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/codec.rs:24:12
[INFO] [stdout]     |
[INFO] [stdout] 24  | pub struct Client<T>
[INFO] [stdout]     |            ------ required by a bound in this
[INFO] [stdout] 25  |     where T: AsyncRead + AsyncWrite + 'static
[INFO] [stdout]     |              --------- required by this bound in `Client`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0277]: the trait bound `Serial: AsyncWrite` is not satisfied
[INFO] [stdout]    --> src/lib.rs:502:26
[INFO] [stdout]     |
[INFO] [stdout] 502 |             let client = Client::new(&handle, port);
[INFO] [stdout]     |                          ^^^^^^^^^^^^^^^^^^^^^^^^^^ the trait `AsyncWrite` is not implemented for `Serial`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/codec.rs:24:12
[INFO] [stdout]     |
[INFO] [stdout] 24  | pub struct Client<T>
[INFO] [stdout]     |            ------ required by a bound in this
[INFO] [stdout] 25  |     where T: AsyncRead + AsyncWrite + 'static
[INFO] [stdout]     |                          ---------- required by this bound in `Client`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `clone` found for struct `Client<Serial>` in the current scope
[INFO] [stdout]    --> src/lib.rs:503:34
[INFO] [stdout]     |
[INFO] [stdout] 503 |               let _client = client.clone();
[INFO] [stdout]     |                                    ^^^^^ method not found in `Client<Serial>`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-serial-4.3.3/src/lib.rs:28:1
[INFO] [stdout]     |
[INFO] [stdout] 28  |   pub struct Serial {
[INFO] [stdout]     |   -----------------
[INFO] [stdout]     |   |
[INFO] [stdout]     |   doesn't satisfy `Serial: AsyncRead`
[INFO] [stdout]     |   doesn't satisfy `Serial: AsyncWrite`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/codec.rs:24:1
[INFO] [stdout]     |
[INFO] [stdout] 24  | / pub struct Client<T>
[INFO] [stdout] 25  | |     where T: AsyncRead + AsyncWrite + 'static
[INFO] [stdout] 26  | | {
[INFO] [stdout] 27  | |     inner: Arc<Inner<T>>
[INFO] [stdout] 28  | | }
[INFO] [stdout]     | | -
[INFO] [stdout]     | | |
[INFO] [stdout]     | |_method `clone` not found for this
[INFO] [stdout]     |   doesn't satisfy `Client<Serial>: Clone`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the method `clone` exists but the following trait bounds were not satisfied:
[INFO] [stdout]             `Serial: AsyncRead`
[INFO] [stdout]             which is required by `Client<Serial>: Clone`
[INFO] [stdout]             `Serial: AsyncWrite`
[INFO] [stdout]             which is required by `Client<Serial>: Clone`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `prog_memory` found for struct `Client<Serial>` in the current scope
[INFO] [stdout]    --> src/lib.rs:504:31
[INFO] [stdout]     |
[INFO] [stdout] 504 |               let task = client.prog_memory('F', 0x0100, 2, buf)
[INFO] [stdout]     |                                 ^^^^^^^^^^^ method not found in `Client<Serial>`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/tokio-serial-4.3.3/src/lib.rs:28:1
[INFO] [stdout]     |
[INFO] [stdout] 28  |   pub struct Serial {
[INFO] [stdout]     |   -----------------
[INFO] [stdout]     |   |
[INFO] [stdout]     |   doesn't satisfy `Serial: AsyncRead`
[INFO] [stdout]     |   doesn't satisfy `Serial: AsyncWrite`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: src/codec.rs:24:1
[INFO] [stdout]     |
[INFO] [stdout] 24  | / pub struct Client<T>
[INFO] [stdout] 25  | |     where T: AsyncRead + AsyncWrite + 'static
[INFO] [stdout] 26  | | {
[INFO] [stdout] 27  | |     inner: Arc<Inner<T>>
[INFO] [stdout] 28  | | }
[INFO] [stdout]     | |_- method `prog_memory` not found for this
[INFO] [stdout]     |
[INFO] [stdout]     = note: the method `prog_memory` exists but the following trait bounds were not satisfied:
[INFO] [stdout]             `Serial: AsyncRead`
[INFO] [stdout]             `Serial: AsyncWrite`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0061]: this function takes 2 arguments but 3 arguments were supplied
[INFO] [stdout]    --> src/lib.rs:513:20
[INFO] [stdout]     |
[INFO] [stdout] 513 |         let port = tokio_serial::Serial::from_path("/dev/ttyACM0", &settings, &handle).unwrap();
[INFO] [stdout]     |                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ --------------  ---------  ------- supplied 3 arguments
[INFO] [stdout]     |                    |
[INFO] [stdout]     |                    expected 2 arguments
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0599]: no method named `map_err` found for struct `Delay` in the current scope
[INFO] [stdout]    --> src/codec.rs:132:22
[INFO] [stdout]     |
[INFO] [stdout] 132 |                     .map_err(|_|{io::Error::new(io::ErrorKind::Other, "Timeout")})
[INFO] [stdout]     |                      ^^^^^^^ method not found in `Delay`
[INFO] [stdout]     | 
[INFO] [stdout]    ::: /opt/rustwide/cargo-home/registry/src/github.com-1ecc6299db9ec823/futures-timer-3.0.2/src/native/delay.rs:26:1
[INFO] [stdout]     |
[INFO] [stdout] 26  | pub struct Delay {
[INFO] [stdout]     | ---------------- doesn't satisfy `Delay: futures::Future`
[INFO] [stdout]     |
[INFO] [stdout]     = note: the method `map_err` exists but the following trait bounds were not satisfied:
[INFO] [stdout]             `Delay: futures::Future`
[INFO] [stdout]             which is required by `&mut Delay: futures::Future`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: use of deprecated associated function `tokio_io::AsyncRead::framed`: Use tokio_codec::Decoder::framed instead
[INFO] [stdout]    --> src/codec.rs:348:15
[INFO] [stdout]     |
[INFO] [stdout] 348 |         Ok(io.framed(Stk500Codec::new()))
[INFO] [stdout]     |               ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `futures::Future`
[INFO] [stdout]    --> src/lib.rs:473:9
[INFO] [stdout]     |
[INFO] [stdout] 473 |     use futures::Future;
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_imports)]` on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 14 previous errors; 9 warnings emitted
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0053, E0061, E0277, E0433, E0599.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0053`.
[INFO] [stdout] 
[INFO] [stderr] error: build failed
[INFO] running `Command { std: "docker" "inspect" "8ccd3d7becb0e715746ca6b98f310f279612d2ec98ba361fec16a768ed5e8705", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8ccd3d7becb0e715746ca6b98f310f279612d2ec98ba361fec16a768ed5e8705", kill_on_drop: false }`
[INFO] [stdout] 8ccd3d7becb0e715746ca6b98f310f279612d2ec98ba361fec16a768ed5e8705
